// 1. 获取命令行参数：process.argv 是全局数组，前两个元素为 node 路径和脚本路径，后续为用户输入的参数
const args = process.argv.slice(2); // 截取用户输入的参数（用户名、密码）

// 2. 校验参数：必须传入用户名和密码两个参数
if (args.length < 2) {
  console.error("错误：请传入用户名和密码参数！");
  console.log("使用示例：node encodeBuffer.js zhangsan 123456");
  process.exit(1); // 错误退出（状态码 1 表示参数异常）
}

// 3. 提取用户名和密码（忽略多余参数）
const username = args[0];
const password = args[1];

// 4. 打印原始用户名和密码
console.log(`用户名: ${username} 密码:${password}`);

// 5. 使用 Buffer 进行 Base64 编码
// 格式：将 "用户名:密码" 拼接成字符串，转换为 Buffer 后再编码为 Base64
const authStr = `${username}:${password}`;
const base64EncodeStr = Buffer.from(authStr, 'utf8').toString('base64');

// 6. 打印 Base64 编码结果
console.log(`base64加密:${base64EncodeStr}`);